package tcu.yuyp.service.impl;

import tcu.yuyp.pojo.R;
import tcu.yuyp.pojo.User;
import tcu.yuyp.service.Utils;

import java.util.List;

//用于服务LoginServlet类
public class LoginService {
//不需要引用repository层的数据

    //用户登录的方法
    public void postLoginResponse(List<User> userList, User loginUser, R r) {
        //用户名和密码不能为空
        if (loginUser.getName().isEmpty() || loginUser.getPassword().isEmpty()) {
            //用户名或者密码为空
            r.setCode(400);
            r.setMsg("登陆失败，用户名或者方法不能为空");
            return;
        }
        //前置和后置空格无效
        if (loginUser.getName().trim().length() < loginUser.getName().length() || loginUser.getPassword().trim().length() < loginUser.getPassword().length()){
            //用户名或者密码中存在空格
            r.setCode(400);
            r.setMsg("登陆失败，用户名或者密码中不能含有空格");
            return;
        }
        //用户名不能重复
        if (Utils.isExitUserName(userList,loginUser.getName())){
            //用户名重复
            r.setCode(400);
            r.setMsg("登陆失败，用户名已存在");
            return;
        }
        //补充：如果是使用数据库，必须判断登录的用户是否在数据库中已有记录
        //成功登录案例
        r.setCode(200);
        r.setData("ok");
    }
}
